A Wavelength Division Multiplex (WDM) optical network consists of optical switches, fiber connecting the optical switches, and WDM technology used to carry multiple wavelengths (optical channels) in a fiber. The optical switches are either Reconfigurable Optical Add-Drop Multiplexers (ROADMs) or Optical Cross Connects (OXCs). ROADMs can be viewed as small OXCs, i.e., they connect to a small number of fibers. ROADMs and OXCs have add/drop ports that connect to client ports, and optical connections between client add/drop ports are set up through the ROADM and OXC optical switching fabrics.
In WDM optical networks, an optical connection is set up through multiple fibers. A basic connection consists of a single wavelength channel, and it is desirable for the frequency of the wavelength channel to be the same frequency in each fiber the connection goes through. If a different frequency is used in adjacent fibers, a wavelength converter is required, which increases cost. The ROADMs and OXCs cross-connect the wavelength used by the connection from one fiber to the other. In order for a single wavelength to be used end-end for a connection, there must be a fiber path between the connection end points that has that wavelength available on each fiber in the path, i.e., it is not being used for another connection on any of the fibers along the fiber path. This is known as the “Wavelength Continuity Constraint” (WCC).
If a single wavelength is not available in each fiber along a fiber path, the connection can be established using wavelength conversion connecting two fibers that require different wavelengths within the ROADMs or OXCs. It is desirable to minimize the amount of wavelength conversion required, since the wavelength conversion is done with expensive opto-electronic equipment. Thus, an important part of setting up optical connections is having information available to be able to determine what wavelengths are available in the different fibers and what OXCs and/or ROADMs have available wavelength converters. With this information, end-end optical connections can be established.
In addition to meeting the WCC and minimizing the amount of wavelength conversion that is required, it is necessary to size the network, e.g., number of wavelengths per fiber and number of fibers between OXC and/or ROADMs, to meet blocking requirements for on-demand services. Typical blocking requirements are on the order of 10**-2 to 10**-3.
Another aspect of setting up optical connections is that some services provide restoration after a failure; such as a fiber cut, causes the working channel to fail.
Dynamic and/or WDM optical networks require optical connections meeting the Wavelength Continuity Constraint (WCC) and minimizing the amount of wavelength conversion required when the WCC cannot be met. Further, setting up connections very quickly, e.g., ranging from 100 ms to a few seconds, is desirable. Previous methods to perform these tasks have been based on the work done by the Internet Engineering Task Force (IETF) in their Generalized Multi-Protocol Label Switching (GMPLS) standards, and in particular RFC 3471, which gives the GMPLS signaling functional description, and RFC 3473, which defines the Resource Reservation Protocol-Traffic Engineering (RSVP-TB) signaling procedures.
Probing techniques have been used to collect recent information on available resources. However, there is a relatively high likelihood that the resources identified by the probes as being available may actually not be available when the reservation request arrives. GMPLS-like methods need to do distributed processing with the RESERVE message, which means processing at a number of nodes along the connection setup path.
The prior art (GMPLS) was fixated on more distributed processing methods between Node A and Node Z, where information is passed, usually in a PATH message, from one node to the next, and processing is done along the way so that when the PATH message reaches Node Z, the wavelength to use to the first upstream node can be determined. Subsequent decisions of wavelengths and wavelength conversion are then made at each node along the RESERVE message path from Node Z to Node A. This distributed processing paradigm results in slow connection setup times, and sub-optimal decisions are made. However, it has been the preferred paradigm to use, and this has been strongly influenced by the work in the IETF.
GMPLS methods probe only a single working path, which is usually determined by link-state update information. Link-state update information occurs on a relatively slow time scale, so there is a reasonable probability there are other paths that are more optimal. The GMPLS methods choose working and restoration paths based on slower link-state advertisements that provide summary information on link state.
One of the means that has been considered to distribute information about available wavelength on fiber links is using the IETF extensions to (Open Shortest-Path First Interior Gateway Protocol) OSPF to support GMPLS, which are provided in RFC 4203. The difficulty with these techniques is that the OSPF link state updates cannot be sent out too frequently, so the information becomes stale very quickly in very dynamic networks. A method to get more up-to-date link state information for wavelength services is defined in RFC 3473 which defines a Label Set Object. This Label Set Object collects more current information than GMPLS link state updates can provide, but in dynamic networks its information is still somewhat stale.
There are three major deficiencies in previous methods. One deficiency is that the information the methods use, e.g., the Label Set Object, to collect available resource infatuation, for example available wavelengths in each fiber, leads to stale and incomplete information at the end node that uses the information to choose the wavelength to use for the connection. As a result, there is a non-negligible probability the chosen wavelengths will not be available along the entire selected path when the reservation step of the procedure is executed. Information is incomplete because the Label Set Object only provides Node Z with available wavelength information beyond the last node on the path that does wavelength conversion, and it provides no information on available wavelength converters at the nodes along the signaled path.
The second major deficiency in previous methods is that they do a poor job of optimizing, e.g., minimizing, the number of wavelength converters required to set up a connection. One proposed improvement is called a “Suggested Vector” which does provide significant improvement in the consideration of wavelength conversion. However, the Suggested Vector does not consider the number of available wavelength converters in individual nodes, limiting its optimization capabilities.
The third major deficiency is the inability of the previous methods to set up connections in a very short amount of time, e.g., within 100 ms in the Continental US. The previous methods, GMPLS and extensions based on GMPLS, need to store information like label sets, suggested labels, suggested vectors, etc., in each node along the path. This is because the end node (Z end) does not have enough information to determine what wavelengths are to be used on each link and where wavelength conversion is to be done. The Z end just knows which wavelength to use on the hop to the first up-stream node. The subsequent wavelength and wavelength conversion decisions at the upstream nodes are determined from the previously stored information from the downstream (A to Z) PATH message. This means that when the RESERVE message goes from Node Z to Node A to set up the connection, there must be logical processing to determine what needs to be done at each node. This requires significant processing time, and thus results in relatively slow connection setup times.
A procedure is needed that does the logical processing only once (at Node Z), and on the signaling pass from Node Z to Node A (Pass 2) very simple cross-connect and wavelength conversion commands can be given to the switches, enabling very fast signaling propagation times between Nodes A and Z.